﻿using System.Collections.Generic;

namespace ConfigInfoWebPlatform.Model
{
    /// <summary>
    /// 配置文件目录结构模型
    /// </summary>
    public class ConfigFileInfoModel
    {
        /// <summary>
        /// 当前目录结构的ID
        /// </summary>
        public string currentId { get; set; }

        /// <summary>
        /// 父结构的ID
        /// </summary>
        public string parentId { get; set; }

        /// <summary>
        /// 级别
        /// </summary>
        public int level { get; set; }

        /// <summary>
        /// 结构类型，是文件还是目录
        /// D = directory  F = file
        /// </summary>
        public string ctype { get; set; }

        /// <summary>
        /// 名称，如果是文件就是文件名，如果是目录就是文件夹名称
        /// </summary>
        public string name { get; set; }

        /// <summary>
        /// 路径
        /// </summary>
        public string path { get; set; }

        /// <summary>
        /// 父级路径
        /// </summary>
        public string parentPath { get; set; }

        /// <summary>
        /// 文件大小
        /// </summary>
        public string fileSize { get; set; }

        /// <summary>
        /// 文件更新时间
        /// </summary>
        public string updateTime { get; set; }

        /// <summary>
        /// 文件创建时间
        /// </summary>
        public string createdTime { get; set; }

        /// <summary>
        /// 功能导航ID
        /// </summary>
        public long programId { get; set; }

        /// <summary>
        /// 备注信息，保存xml根节点的explain属性的value
        /// </summary>
        public string note { get; set; }

        /// <summary>
        /// 状态，E=正在编辑中
        /// </summary>
        public string status { get; set; }

    }

    /// <summary>
    /// 配置文件信息的json格式，配置layui中的table返回数据
    /// </summary>
    public class CfgJsonObject
    {
        public int code { get; set; }

        public string msg { get; set; }

        public int count { get; set; }

        public List<ConfigFileInfoModel> data { get; set; }
    }
    /// <summary>
    /// 配置文件结构类
    /// </summary>
    public class ConfigFileList
    {

        ///<summary>
        /// 总的配置文件数量
        ///</summary> 
        public int TotalNum { get; set; }

        /// <summary>
        /// 流程配置文件结构
        /// </summary>
        public List<ConfigFileInfoModel> processCfgFiles { get; set; }

        /// <summary>
        /// 流程配置文件数
        /// </summary>
        public int processCfgFilesNum { get; set; }

        /// <summary>
        /// 模块配置文件结构
        /// </summary>
        public List<ConfigFileInfoModel> moduleCfgFiles { get; set; }

        /// <summary>
        /// 模块配置文件数
        /// </summary>
        public int moduleCfgFileNum { get; set; }

        /// <summary>
        /// 机器学习配置文件结构
        /// </summary>
        public List<ConfigFileInfoModel> MLCfgFiles { get; set; }

        /// <summary>
        /// 机器学习配置文件数
        /// </summary>
        public int MLCfigFileNum { get; set; }

        /// <summary>
        /// 案件要素中心配置文件
        /// </summary>
        public List<ConfigFileInfoModel> caseElementCfgFiles { get; set; }

        /// <summary>
        /// 分析内部执行使用的配置文件(推导与优选的配置文件)
        /// </summary>
        public List<ConfigFileInfoModel> internalExeCfgFiles { get; set; }
        /// <summary>
        /// 当日新增配置文件
        /// </summary>
        public int todayAddFiles { get; set; }
    }

}
